<?php
/**
 *
 * Common configurations
 * @author griever
 *
 */
ini_set ( 'default_charset', 'UTF-8' );
class GlobalConfig {
	
	static $userMaxExpertises = 50;
	
	static $java_agent_host = "127.0.0.1";
	
	static $java_agent_port = "13000";
	
	static $java_search_port = "13010";
	
	static $supportEmail = 'support@bkprofile.com';
	
	/* Should we display error verbosely ? */
	static $verbose = true;
	
	/* Should we display debug stack trace ? */
	static $showStackTrace = true;
	
	static $indexEnd = '50000';
	
	static $indexBegin = "0";
	
	static $indexLevels = 1;
	
	static $indexKeywords = array (array ('name', 'company', 'school', 'birthday', 'image_link' ), array () );
	
	static $map = array ("name" => '9', "company" => '34', "school" => array ('42', '79', '80', '81', '82', '83' ) );
	
	const numResPerpage = 10;
	
	static $pageTitle = 'BKProfile - Connecting people';
	
	static $maxLoginAttempt = 5;
	
	static $blockSessionTimeout = 300;
	
	static $minSolrResults = 0;
	
	static $maxSolrLevels = 1; //starting from 0

	//normal login session expired in 2 hours
	static $loginSessionExpireTime = 7200;

	//PL cookie expired in 1 month 
	static $plCookieExpireTime = 2592000;
	
	const COOKIE_DOMAIN = 'griever';
	
	const LOGIN_INIT_ERROR_THEFT = 1;
	
	const MIN_PASSWORD_LENGTH = 6;
	
	const DEFAULT_COLOR = "black";
	
	const DELIMITER = "__DELIMITER##";
}
class ViewConfig {
	
	/* The view include folder */
	static $includeFolder = "includes";
	
	/* The default header templates */
	static $defHeader = array ("header.phtml", "searchBar.phtml" );
	
	/* The default footer templates */
	static $defFooter = array ("footer.phtml" );
	
	/* The default left side bar templates */
	static $defLeftSide = array ("leftside-category.phtml", "leftside-about.phtml" );
	
	/* The default right side bar templates */
	static $defRightSide = array ("rightside.phtml" );
	
	/* The default main menu templates */
	static $defMainMenu = array ("mainmenu.phtml" );
	
	/* The default user upper panel templates */
	static $userUpper = array ("user-upper.phtml" );
}
class ExceptionConfig {
	
	const NOTFOUND_EXCEPTION = "NOTFOUND_EXCEPTION";
	
	const UNDERCONSTRUCTION_EXCEPTION = "UNDERCONSTRUCTION_EXCEPTION";
	
	const UNDERMAINTENANCE_EXCEPTION = "UNDERMAINTENANCE_EXCEPTION";
	
	const PERM_EXCEPTION = 'PERM_EXCEPTION';
}
class ProfileSearchResult {
	
	const SUCCESS = 0;
	
	const ERROR_SERVER_DOWN = 1;
	
	const ERROR_ABNORMAL_QUERY = 2;
}
class ObjectType {
	
	public static $DEF_TYPES = array (ObjectType::OBJECT => "releaseObjdefs", ObjectType::COMPANY => "company_def", ObjectType::SAMPLE_OBJECT => "company_person_def" );
	
	public static $KEYWD_TYPES = array (ObjectType::OBJECT => "releaseKeywords", ObjectType::COMPANY => "company_keywords", ObjectType::SAMPLE_OBJECT => "company_person_keywords" );
	
	const OBJECT = "person";
	
	const COMPANY = "company";
	
	const SAMPLE_OBJECT = "sample_obj";
}
class SolrConfig {
	
	public static $LEVEL0_COUNT = 1000;
	
	public static $LEVEL1_COUNT = 1000;
	
	public static $DEFAULT_CORE = "level1";
}
//Localization
class Message {
	
	const NO_TITLE_DEFINED = "Bạn chưa nhập tiêu đề cho câu hỏi";
	
	const INSUFFICIENT_INPUT = "Bạn chưa nhập đủ dữ liệu";
	
	const EXPERTISE = "Lĩnh vực chuyên môn";
	
	const HOMETOWN = "Quê quán";
	
	const CONTRIBUTE_TO_BKPROFILE = "Đóng góp cho BKProfile";
	
	const SHOW_MORE_RESULTS = "Xem thêm các kết quả khác";
	
	const SHOW_ALL_RESULTS = "Ðể hiển thị cho bạn những kết quả thích hợp nhất, chúng tôi đã loại bỏ những kết quả tương tự với các kết quả đã được hiển thị.";
	
	const REPEAT_SEARCH_FIRST = "Nếu muốn, bạn có thể ";
	
	const REPEAT_SEARCH_LAST = "lặp lại quá trình tìm kiếm bao gồm cả những kết quả đã bị loại bỏ.";
	
	const CLICK_HERE_TO_CREATE_PROFILE = "Bấm vào đây để tạo Profile mới";
	
	const CLICK_HERE_TO_USER_HOME = "Bấm vào đây để trở về trang cá nhân của bạn";
	
	const NO_CANDIDATE = "Bạn chưa chọn Profile nào cả";
	
	const WHICH_METHOD_CREATE_PROFILE = "Bạn muốn tạo Profile theo cách nào";
	
	const BIND_PROBABLY_EXIST = "Rất có thể Profile của bạn đã có trên hệ thống của chúng tôi.<br>Do đó, bạn nên cung cấp cho chúng tôi một số thông tin bổ sung về bạn, chúng tôi sẽ gợi ý Profile phù hợp với bạn nhất";
	
	const YOU_ARE = "Nghề nghiệp của bạn";
	
	const YOUR_INTEREST = "Mối quan tâm của bạn";
	
	const WANNA_BIND = "Hoặc bạn có thể tạo một Profile trên BKProfile.com cho mình bằng cách trả lời những thông tin sau";
	
	const REGISTER_WELCOME = "Chào bạn! Để đăng ký tại BKProfile.com, bạn cần điền vào những thông tin dưới đây";
	
	const NO_URL_SPECIFIED = "No URL!";
	
	const INVALID_DATA = "Dữ liệu không hợp lệ";
	
	const NO_DATA_SPECIFIED = "Bạn chưa nhập dữ liệu";
	
	const VIEW_PROFILE_TEMPLATE = "View profile template";
	
	const STUDENT_ID = "Số hiệu sinh viên";
	
	const IF_ANY = "(nếu có)";
	
	const STUDENT_PROFILE = "Profile của Sinh viên";
	
	const TEACHER_PROFILE = "Profile của Giảng viên";
	
	const COMPANY_PROFILE = "Profile của Doanh nghiệp";
	
	const SELECT_A_PROFILE_TYPE = "Cảm ơn bạn đã đóng góp cho BKProfile.com! Việc tạo Profile sẽ giúp hệ thống dữ liệu của chúng tôi thêm phong phú.<br>Trước khi tạo Profile, bạn hãy cho chúng tôi biết bạn muốn tạo loại Profile nào?";
	
	const CREATE_NEW_PROFILE = "Tạo Profile mới";
	
	const VIEW_REV_DETAIL = "View revision detail";
	
	const REVERT_NOT_ALLOWED = "You dont't have permission to revert this version";
	
	const LOGIN_REQUIRED = 'Login is required';
	
	const VERSION_NOT_DEFINED = 'Version is not defined';
	
	const VIEW_COMMITTED_REVS = 'View committed revisions';
	
	const VIEW_AFFECTED_REVS = 'View affected revisions';
	
	const COMMIT_SUCCESS = 'Cập nhật thành công';
	
	const COMMIT_FAILED = 'Hiện thời hệ thống không thể cập nhật dữ liệu';
	
	const ERROR_NO_BUG_DETAIL = 'Không có thông tin chi tiết cho báo cáo. Xin vui lòng thử lại';
	
	const FEEDBACK_ERROR_UNSUFFICIENT_PARAMS = 'Bạn cần nhập thông tin phản hồi. Cảm ơn';
	
	const FEEDBACK_ERROR_CANNOT_RETRIEVE = 'Rất tiếc. Hiện chúng tôi chưa thể tiếp nhận phản hồi của bạn. Xin vui lòng thử lại sau, cảm ơn!';
	
	const LOGIN_COOKIE_THEFT = 'Đã có ai đó sử dụng cookie của bạn để đăng nhập. Để đảm bảo an toàn cho bạn, chúng tôi sẽ xóa các cookie hiện thời.';
	
	const THANKS_FOR_FEEDBACK = 'Cảm ơn bạn đã gửi thông tin phản hồi cho chúng tôi. Sự đóng góp của bạn sẽ làm hệ thống ngày càng hoàn thiện hơn.';
	
	//INCLUDES
	//ajaxLoginScript.phtml
	const NOTICE = 'Thông báo';
	
	//captcha.phtml
	const PLZ_INPUT_CAPTCHA = 'Bạn hãy nhập vào dòng chữ ở trên';
	
	const CLK_TRY_ANOTHER_CAPTCHA = 'Bấm vào đây để thử hình ảnh khác';
	
	//contact_on_error.phtml
	const PROBLEM_PERSIST = 'Nếu vấn đề vẫn còn tồn tại, vui lòng';
	
	const CONTACT_US = 'liên hệ với chúng tôi';
	
	//editAvatar.phtml
	const CHANGE_EMAIL_N_PASSWD = 'Thay đổi email và mật khẩu';
	
	const INPUT_CURRENT_PASSWD = 'Nhập vào mật khẩu hiện thời của bạn để tiếp tục';
	
	const INPUT_NEW_PASSWD = 'Nhập vào mật khẩu mới';
	
	const CONFIRM_NEW_PASSWD = 'Nhập lại mật khẩu';
	
	const INPUT_NEW_EMAIL = 'Nhập vào email mới';
	
	const CONFIRM_NEW_EMAIL = 'Nhập lại email';
	
	const ERROR_WHEN_UPLOAD = 'Đã xảy ra lỗi khi tiến hành tải ảnh lên';
	
	const ERROR_WHEN_EDIT_EMAIL = 'Đã xảy ra lỗi khi tiến hành thay đổi email & mật khẩu';
	
	const ERROR_WHEN_EDIT_BIND = 'Đã xảy ra lỗi khi tiến hành thay đổi Profile của bạn';
	
	const ERROR_WHEN_EDIT_AVATAR = 'Đã xảy ra lỗi khi tiến hành thay đổi Hình đại diện';
	
	const CHANGE_BIND = 'Thay đổi Profile của tôi';
	
	const CHANGE_AVATAR = 'Thay đổi hình đại diện';
	
	const CHANGE_AVATAR_DESC = 'Bạn có thể thay đổi hình đại diện bằng một ảnh mới, với định dạng png hoặc jpeg';
	
	const UPLOAD_FROM_COMPUTER = 'Cách 1 - Tải ảnh từ máy tính lên';
	
	const UPLOAD_FROM_WEBSITE = 'Cách 2 - Tải ảnh từ trang web khác (Unsupported)';
	
	const CURRENT_BIND_IS = 'Profile hiện tại của bạn';
	
	const NO_CURRENT_BIND = 'Bạn chưa tạo Profile cho mình';
	
	const NO_CURRENT_BIND_EXPL = 'Bạn cần có một profile đại diện để có thể sử dụng tính năng này.<br>Để chọn profile đại diện,bạn hãy vào đường dẫn sau: ';
	
	//editDetails.phtml
	const UPDATE = 'Cập nhật';
	
	//footer.phtml
	const COPYRIGHT = 'Copyright BKProfile @ 2009';
	
	//header.phtml
	const PEOPLE = 'Người';
	
	const IMAGES = 'Ảnh';
	
	//leftside-about.phtml
	const ABOUT = 'Giới thiệu BKProfile';
	
	const WHATS_BKPROFILE = 'BKProfile là một ứng dụng web hỗ trợ tìm kiếm người.';
	
	//leftside-category.phtml
	const CATEGORY = 'Danh mục';
	
	const COMPANIES = 'Công ty';
	
	const COLLEGES = 'Trường';
	
	//loginForm.phtml
	const USERNAME = 'Tên đăng nhập';
	
	const PASSWD = 'Mật khẩu';
	
	const LOGIN = 'Đăng nhập';
	
	const REMEMBER_ME = 'Nhớ lần đăng nhập của tôi';
	
	const REGISTER = 'Đăng ký';
	
	//mainmenu.phtml
	const HOME = 'Trang chủ';
	
	//pageLinks.phtml
	const PREV = 'Trước';
	
	const NEXT = 'Sau';
	
	//reActivateForm.phtml
	const ERROR_WHEN_REACTIV = 'Đã có lỗi khi tiến hành gửi mail kích hoạt. Hãy chắc chắn bạn nhập chính xác và đầy đủ các thông tin';
	
	const PLZ_INPUT_EMAIL = 'Hãy nhập email của bạn';
	
	const EMAIL = 'Email';
	
	const CONTINUEZ = 'Tiếp tục';
	
	//registerForm.phtml
	const SUGGESTION_NOT_FOUND = 'Chúng tôi không tìm thấy profile nào phù hợp.';
	
	const SUGGESTION_FOUND = 'Chúng tôi tìm thấy 1 vài profile sau phù hợp với bạn.';
	
	const ERROR_WHEN_REGIST = 'Đã có lỗi khi tiến hành đăng ký. Hãy chắc chắn bạn nhập chính xác và đầy đủ các thông tin';
	
	const USERNAME_CONSTRAINT = 'Tên đăng nhập của bạn, chỉ được bao gồm số và chữ cái';
	
	const RE_PASSWD = 'Nhập lại mật khẩu';
	
	const BASIC_INFO = 'Thông tin cơ bản';
	
	const ADDITIONAL_INFO = 'Thông tin bổ sung';
	
	const FULLNAME = 'Họ và tên';
	
	const ADDR = 'Địa chỉ';
	
	const CITY = 'Thành phố';
	
	const COUNTRY = 'Đất nước';
	
	const WORK_LOCATION = 'Nơi công tác';
	
	const WORK_DEPARTMENT = 'Phòng ban/Bộ môn';
	
	const PROFESSION = 'Chức vụ';
	
	const INTEREST = 'Lĩnh vực quan tâm';
	
	const DU_WANNA_BIND = 'Bạn có muốn gắn tài khoản với 1 profile không';
	
	const BIND_DESCRIPT = 'Việc gắn tài khoản với profile sẽ giúp chúng tôi đưa ra những gợi ý tốt nhất cho bạn, như đưa ra công ty đang tuyển dụng những vị trí phù hợp, các nhóm và câu lạc bộ phù hợp...<br><br>Sau khi bạn gắn tài khoản vào profile, chúng tôi sẽ tổng hợp các thông tin đã có trong profile và thông tin từ các nguồn khác (công ty, câu lạc bộ, nhóm...) để đưa ra gợi ý cho bạn';
	
	const BIND_WITH_EXIST = 'Chọn một Profile có sẵn';
	
	const UPDATE_PROFILE_BASED_ON_ME = 'Đồng thời cập nhật profile dựa trên thông tin cá nhân của tôi';
	
	const BIND_UPDATE_PROFILE_INFO = 'Việc cập nhật này sẽ <b>không bao gồm</b> các thông tin về <u>tên đăng nhập</u>, <u>mật khẩu</u> và <u>email</u>. Các thông tin khác của bạn sẽ được cập nhật vào profile, và mọi người đều có thể xem';
	
	const BIND_NEW = 'Tạo một Profile mới';
	
	const NO_THANKS = 'Không, tôi không muốn';
	
	const FINISH_REGIST = 'Hoàn tất đăng ký';
	
	const FIELD_REQUIRED = "Bạn phải điền thông tin vào trường này.";
	
	const PASSWORD_NOT_MATCH = "Password phải trùng nhau.";
	
	const NUMBER_WORD_ONLY = "Chỉ được nhập chữ hoặc số.";
	
	const LENGTH_NOT_MATCH = "Độ dài mật khẩu phải lớn hơn 6 ký tự.";
	
	const CONGRAT_AFTER_REGISTER = "Chúc mừng";
	
	const WELCOME_AFTER_REGISTER = "bạn đã đăng ký thành công";
	
	const PLZ_CHECK_ACTIVATION_MAIL = "";
	
	const CLICK_HERE_TO_LOGIN = "Bạn hãy bấm vào đây để đăng nhập";
	
	const EMAIL_TYPE_NOT_VALID = "Email không đúng định dạng.";
	
	//searchBar.phtml
	const ADV_SEARCH = 'Tìm kiếm nâng cao';
	
	const PROFILE_SEARCH = 'Tìm kiếm theo mẫu';
	
	//usercpmenu.phtml
	const EDIT_USER_INFO = 'Chỉnh sửa thông tin';
	
	const EDIT_DETAILS = 'Thông tin chi tiết';
	
	const VIEW = 'Xem';
	
	const EDIT_SUCCESS = 'Cập nhật thành công';
	
	const EDIT_AVATAR = 'Hình đại diện';
	
	const EDIT_EMAIL_N_PASSWD = 'Email và mật khẩu';
	
	const EDIT_BIND = 'Profile của tôi';
	
	const TASKS = 'Tác vụ';
	
	const DASHBOARD = 'Bảng điều khiển';
	
	const SEND_ACTIVATION = 'Gửi mail kích hoạt';
	
	const STATISTICAL_INFO = 'Xem thống kê';
	
	const VIEW_ALL = 'Xem tất cả';
	
	//PROFILE
	//all.phtml
	const INFORMATION = 'Thông tin';
	
	const NO_PROFILES_AVAILABLE = 'Không có profile nào tồn tại';
	
	//index.phtml
	const FEATURE_NEED_LOGIN = 'Bạn chưa đăng nhập, để sử dụng tính năng này, bạn cần đăng nhập';
	
	const UNKNOWN_PROFILE = 'Không biết';
	
	const NO_BIOGRAP = 'Không có thông tin về tiểu sử của người này.';
	
	const SHARE_INFO = 'Thông tin chia sẻ';
	
	const PROFILE_NOT_EXIST = 'Profile không tồn tại';
	
	//edit.phtml
	const EDIT = 'Sửa';
	
	//profile.phtml
	const WE_CANT_FIND = 'Chúng tôi không tìm thấy';
	
	//SEARCH
	//adv-search.phtml
	const CONFIRM = 'Xác nhận';
	
	const SEARCH_SUBMIT = 'Tìm kiếm';
	
	//partialSearchResult.phtml
	const NO_BIRTHDAY = 'Không rõ ngày sinh';
	
	const BIRTHDAY = 'Ngày sinh';
	
	const WORK_AT = 'Nơi làm việc';
	
	//results.phtml
	const THERE_ARE = 'Có';
	
	const RESULTS = 'Kết quả';
	
	const NO_RESULTS_MATCH = 'Không có kết quả trả về';
	
	const ERROR_OCCUR = 'Đã có lỗi xảy ra';
	
	//CONTROLLERS_ACTION_HELPERS
	//CheckActivationCode.php
	const ACTIV_CODE_EXPIRED_CLK = 'Mã đăng ký của bạn đã quá hạn, bạn hãy click vào';
	
	const HERE = 'đây';
	
	const TO_RECV_NEW_CODE = 'để nhận lại mã kích hoạt';
	
	const ACTIV_CODE_INVALID = 'Mã đăng ký của bạn không hợp lệ';
	
	//CheckCaptcha.php
	const CAPTCHA_INVALID = 'Mã xác minh bạn nhập không chính xác';
	
	//CheckEmail.php
	const EMAIL_NOT_AVAI = 'Email đã được sử dụng';
	
	//CheckEmailWellForm.php
	const EMAIL_NOT_WELLFORM = 'Email không hợp lệ';
	
	//CheckPrimaryBind.php
	const PROFILE_ALREADY_BOUND = 'Profile này đã được gắn rồi';
	
	const PROFILE_ID_INVALID = 'Profile không hợp lệ';
	
	//CheckUsername.php
	const USERNAME_INVALID = 'Tên đăng nhập không hợp lệ';
	
	const USERNAME_NOT_AVAI = 'Tên đăng nhập đã được sử dụng';
	
	//GetSearchResult.php
	const QUERY_MUST_DEFINED = 'Phải định nghĩa câu truy vấn !';
	
	//SendActivationEmail.php
	const EMAIL_VALIDATION = 'Xác nhận email tại BKProfile';
	
	//CONTROLLERS
	//BaseController.php
	const WELCOME = 'Xin chào';
	
	const WELCOME_NEW_USR = 'Chào mừng';
	
	const REG_IN_BKPROFILE = "đã đăng ký tài khoản tại BKProfile";
	
	const FINISH_REG = "Để hoàn thành việc đăng ký tài khoản, bạn cần sử dụng đường link sau để xác nhận:";
	
	const WELCOME_PLZ_LOGIN = 'Xin chào bạn, xin mời bạn';
	
	const USERCP = 'Hồ sơ cá nhân';
	
	const USER = 'Người dùng';
	
	const LOGOUT = 'Đăng xuất';
	
	//SearchController.php
	const ERROR_SERVER_DOWN = 'Hệ thống đang bảo trì, xin vui lòng thử lại sau.';
	
	const ERROR_QUERY_ABNORMAL = 'Truy vấn không hợp lệ, đề nghị kiểm tra lại';
	
	//UserController.php
	const ERROR_NO_EMAIL = 'Bạn chưa nhập email';
	
	const ERROR_EMAIL_NOT_EXIST = 'Email không tồn tại';
	
	const ACC_ALREADY_ACTIV = 'Tài khoản của bạn đã được kích hoạt rồi';
	
	const ACTIV_MAIL_SENT = 'Mail kích hoạt đã được gửi tới hòm thư của bạn';
	
	const ACTIV_SUCCESS_CLK = 'Bạn đã kích hoạt thành công, bấm vào';
	
	const TO_GO_TO_HOMEPAGE = 'để trở về trang chủ';
	
	const ERROR_NO_CAPTCHA = 'Bạn chưa nhập mã xác minh';
	
	const ERROR_NO_USERNAME = 'Bạn chưa nhập Tên Đăng nhập';
	
	const ERROR_NO_PASSWD = 'Bạn chưa nhập Mật khẩu';
	
	const ERROR_NO_FULLNAME = 'Bạn chưa nhập Họ và Tên';
	
	const ERROR_PASSWD_MISMATCH = 'Hai mật khẩu không giống nhau';
	
	const LOGIN_FAIL_EXCEED_LIMIT = 'Bạn đã đăng nhập thất bại quá số lần cho phép. Hãy đợi 5 phút rồi mới đăng nhập lại';
	
	const NEED_UNAME_N_PASSWD = 'Bạn cần điền tên đăng nhập và mật khẩu';
	
	//UsercpController
	const NO_FILE_UPLOADED = 'Bạn chưa chọn file ảnh để tải lên';
	
	const FILE_NOT_IMAGE = 'File bạn chọn không phải ảnh hợp lệ';
	
	const FILE_TOO_LARGE = 'File bạn chọn quá lớn';
	
	const UPLOAD_ERROR = 'Đã có lỗi khi truyền file. Bạn hãy thử lại sau';
	
	const ERROR_PASSWD_INVALID = 'Mật khẩu bạn nhập vào không đúng';
	
	const ERROR_CURPASSWD_INVALID = 'Mật khẩu hiện tại bạn nhập vào không đúng';
	
	const ERROR_PASSWD_MUST_ALNUM = 'Mật khẩu chỉ được bao gồm số và chữ';
	
	const ERROR_PASSWD_LENGTH_UNSUFFICIENT = 'Mật khẩu phải có độ dài trên 6 kí tự';
	
	const ERROR_NO_CURRENT_PASSWD = 'Bạn phải nhập mật khẩu hiện tại';
	
	const ERROR_EMAIL_MISMATCH = 'Hai email không giống nhau';
	
	const BIND_SUCCESS = 'Bạn đã thay đổi Profile đại diện thành công';
	
	const EMAIL_CHANGED_SUCCESS = 'Bạn đã thay đổi email và mật khẩu thành công';
	
	const AVATAR_CHANGED_SUCCESS = 'Bạn đã thay đổi avatar thành công';
	
	const ERROR_UNDERCONSTRUCTION = "Site đang xây dựng. Mong bạn vui lòng quay lại sau";
	
	const ERROR_NOTFOUND = "Trang bạn đang tìm không tồn tại.";
	
	const ERROR_PERMISSION_DENIED = "Bạn không có đủ quyền để truy cập vào mục này.";
	
	const ERROR_NOT_LOGGEDIN = "Nếu bạn chưa đăng nhập, hãy đăng nhập ngay bằng link sau:  ";
	
	//user-cp-box.phtml
	const ACCOUNT = 'Tài khoản';
	
	//edit-bind.phtml
	const REQUEST_FOR_NEW_BIND = 'Để thay đổi Profile của mình, bạn có thể sử dụng 1 trong 2 cách';
	
	const SEARCH_EXIST_BIND = 'Cách 1 - Tìm kiếm một Profile sẵn có';
	
	const CREATE_NEW_BIND = 'Cách 2 - Tạo một Profile mới';
	
	const SELECT_AS_BIND = 'Chọn Profile này';
	
	const SUGGESTION_NOT_FOUND_WITH = 'Chúng tôi không tìm thấy kết quả nào phù hợp với ';
	
	const TRY_ANOTHER_KEYWORD = 'Bạn hãy thử tìm kiếm với từ khóa khác';
	
	const INPUT_KEYWORD_TO_SEARCH = 'Bạn hãy nhập từ khóa vào để tìm kiếm';
	
	const SECURITY_INFO = 'Thông tin bảo mật';
	
	// leftside-generalcompany
	const COMPANY_GENERAL_INFO = "Thông tin chung";
	
	const COMPANY_NAME = "Tên";
	
	const COMPANY_FOUND_DATE = "Ngày thành lập";
	
	const COMPANY_ADDR = "Địa chỉ";
	
	// leftside-generalprofile
	const PROFILE_GENERAL_INFO = "Thông tin chung";
	
	const PROFILE_NAME = "Tên";
	
	const PROFILE_BIRTH_DATE = "Ngày sinh";
	
	const PROFILE_PLACE_ORIGIN = "Địa chỉ";
	
	// leftside-generalsample
	const PROFILE_SAMPLE_GENERAL_INFO = "Thông tin chung";
	
	const PROFILE_SAMPLE_WORK_POSITION = "Vị trí tuyển dụng";
	
	const PROFILE_SAMPLE_COMPANY_NAME = "Tên công ty";
	const PROFILE_SAMPLE_ADDR = "Địa chỉ công ty";
	// profileFeatureShareBtn
	const PROFILE_FEATURE_SHARE_BTN = "Mối quan hệ chung (Share Relationship)";
	// rightside-tags
	const RELATED_TAGS = "Những thẻ liên quan";
	//editPropProcess
	const CHANGED_TO_PROFILE_WANT_TO_QUIT = "Bạn đã thay đổi một vài thông tin trong profile. Bạn có thực sự muốn rời khỏi trang này và không lưu các thông tin đã thay đổi ?";
	// editSchoolsPlhld
	const ADD_ANOTHER_SCHOOL = "Thêm một trường mới";
	// rightside
	const FEED_BACK = "Góp ý";
	
	const SEND_FEED_BACK = "Gửi góp ý";
	
	const REPORT_ISSUE = "Báo cáo lỗi";
	
	const INVESTIGATE = "Khảo sát";
	
	const LANGUAGE = "Ngôn ngữ";
	
	const FEEDBACK_DEFECTED_ISSUE = "Khiếm khuyết";
	
	const DEFFECTED_FEED_BACK = "Báo cáo khiếm khuyết";
	
	//feedback
	const FEEDBACK_SENDER = "Người gửi";
	
	const FEEDBACK_EMAIL = "Email";
	
	const FEEDBACK_SUMMARY = "Tóm tắt";
	
	const FEEDBACK_DESCRIPTION = "Nội dung";
	
	const FEEDBACK_STEP_TO_REPRODUCE = "Các bước tái hiện";
	
	const FEEDBACK_TYPE = "Loại";
	
	const FEEDBACK_TYPE_APPLICATION_DEFECT = "Báo cáo khiếm khuyết chương trình";
	
	const FEEDBACK_TYPE_APPLICATION_ENHANCEMENT = "Yêu cầu cải thiện";
	
	const FEEDBACK_TYPE_APPLICATION_SOURCECODE_REVIEW = "Yêu cầu xem lại mã nguồn";
	
	const FEEDBACK_TYPE_APPLICATION_DEFECT_OTHER = "Báo cáo các vấn đề khác";
	
	const FEEDBACK_PRIORITY = "Ưu tiên";
	
	const FEEDBACK_DEFECTED_TYPE = "Loại khiếm khuyết";
	
	const FEEDBACK_DEFECTED_TYPE_ALL_PLATFORM = "Ảnh hưởng trong mọi hệ điều hành";
	
	const FEEDBACK_DEFECTED_TYPE_WINDOW = "Ảnh hưởng đến người dùng Window";
	
	const FEEDBACK_DEFECTED_TYPE_LINUX = "Ảnh hưởng đến người dùng Linux";
	
	const FEEDBACK_DEFECTED_TYPE_MACOS = "Ảnh hưởng đến người dùng Mac";
	
	const FEEDBACK_DEFECTED_TYPE_ALL_ESSENTIAL_FUNCTION = "Mọi chức năng quan trọng trong phiên bản hiện tại";
	
	const FEEDBACK_DEFECTED_TYPE_UI = "Vấn đề liên quan đến giao diện người dùng";
	
	const FEEDBACK_DEFECTED_TYPE_LOGIC = "Vấn đề liên quan đến logic hệ thống";
	
	const FEEDBACK_DEFECTED_TYPE_SCRIPTS = "Vấn đề liên quan đến các component lưu trữ dữ liệu";
	
	const FEEDBACK_DEFECTED_TYPE_ENDUSER_DOC = "Vấn đề liên quan đến văn bản người dùng";
	
	const FEEDBACK_DEFECTED_TYPE_USER_SECURITY = "Nguy hiểm cho người dùng";
	
	const FEEDBACK_DEFECTED_TYPE_PERFORMANCE_ISSUE = "Vấn đề hiệu năng";
	
	const FEEDBACK_DEFECTED_TYPE_MAINTAINABILITY = "Cản trở thay đổi trong tương lai";
	
	const FEEDBACK_DEFECTED_TYPE_USABILITY = "Ảnh hưởng tiện lợi hệ thống";
	
	const FEEDBACK_EXPECTED_RESULT = "Kết quả mong đợi";
	
	const FEEDBACK_CURRENT_RESULT = "Kết quả hiện tại";
	
	const FEEDBACK_VERSION_USED = "Phiên bản đang dùng";
	
	const FEEDBACK_OPERATING_SYSTEM = "Hệ điều hành";
	
	const FEEDBACK_HIGH_PRIORITY = "Độ ưu tiên cao";
	
	const FEEDBACK_MEDIUM_PRIORITY = "Độ ưu tiên trung bình";
	
	const FEEDBACK_LOW_PRIORITY = "Độ ưu tiên thấp";
	
	const ABOUT_US = "Về chúng tôi";
	
	const TUTORIAL = "Hướng dẫn";
	
	const FAQ = "Câu hỏi thường gặp";
	
	const TERMS = "Điều khoản sử dụng";
	
	const PRIVACY = "Điều khoản riêng tư";
	
	const ARCHITECTURE = "Kiến trúc";
	
	const HELP_IMPROVING = "Cảm nghĩ của bạn ra sao về BkProfile?";
	
	// showEditableDialog
	const CHANGED_VALUE_WANT_TO_SAVE = "Bạn đã thay đổi một vài thông tin. Bạn có muốn lưu chúng lại ?";
	// results
	const SEARCH_RESULT = "Kết quả tìm kiếm";
	// profile/index.phtml
	const ACQUAINTANCES = "Người quen";
	
	const GENDER = "Giới tính";
	
	const SCHOOLNAME = "Tên trường";
	
	const SCHOOLYEAR = "Năm vào trường";
	
	const SCHOOLCONCENTRATION = "Chuyên ngành";
	
	const RESEARCH_FIELD = "Lĩnh vực nghiên cứu";
	
	const UPDATE_SUCCESFULLY_COMPLETED = "Cập nhật thành công";
	
	const UPDATE_NOT_SUCCESFULLY_COMPLETED = "Cập nhật không thành công";
	
	// source percentage
	const ERROR_CANNOT_GET_SOURCE = "Không lấy được thông tin về nguồn";
	
	const SOURCE_CRAWLER = "Internet";
	
	const SOURCE_CRAWLER_COLOR = "blue";
	
	const SOURCE_OWNER = "Chủ";
	
	const SOURCE_OWNER_COLOR = "black";
	
	const SOURCE_OTHER = "Người khác";
	
	const SOURCE_OTHER_COLOR = "red";
	
	const SOURCE_DEF = "Nguồn gốc thông tin";
	
	//homepage
	const PROFILE_NOT_FOUND = "Không có bản ghi";
	
	const NO_CHANGE = "Không có thay đổi !";
	
	const EDIT_MENU = "Sửa thông tin tài khoản";
	
	const EDIT_CONFIRM = "Bạn đã thực hiện các tác vụ chỉnh sửa trên trang. Bạn thật sự muốn chuyển trang khi chưa lưu lại?";

	const EDIT_NOT_CHANGES  = "Bạn chưa thực hiện bất kỳ một chỉnh sửa nào!";
	
	const WAITING = "Xin vui lòng chờ";
	
	const RECRUIT = "Tuyển dụng";
	
	const ERROR_NO_TOKEN = "Chưa nhập mã đăng ký";
	
	const TOKEN_INVALID = "Mã đăng ký không hợp lệ";
}

class ProfileHomeTypes {
	
	const TOP_PROFILES = "top";
	
	const LATEST_PROFILES = "latest";
	
	const RANDOM_PROFILES = "random";
	
	static $TIME_CACHE = array (ProfileHomeTypes::TOP_PROFILES => 86400, ProfileHomeTypes::LATEST_PROFILES => 60, ProfileHomeTypes::RANDOM_PROFILES => 1 );
}

class CacheConst {
	
	//caching a whole file
	const CACHE_FRONTEND_FILE = 'File';
	
	//caching a whole page
	const CACHE_FRONTEND_PAGE = 'Page';
	
	//caching a part of the page
	const CACHE_FRONTEND_OUTPUT = 'Output';
	
	//caching function results
	const CACHE_FRONTEND_FUNCTION = 'Function';
	
	//caching object
	const CACHE_FRONTEND_CLASS = 'Class';
	
	//cache using Memcached
	const CACHE_BACKEND_MEMCACHED = 'Memcached';
	
	//cache using Apc
	const CACHE_BACKEND_APC = 'Apc';
}
class CacheConfig {
	
	//disable the cache?
	static $cacheDisabled = true;
	
	static $cachedViews = array ('index/index.phtml' );
	
	//caching life time of a static data
	static $staticCacheLifeTime = 86400;
}
class UploadConfig {
	
	static $maxAvatarSize = '128kB';
	
	static $maxAvatarWidth = '512';
	
	static $maxAvatarHeight = '512';
}
class TermFetchMode {
	const FETCH_ALL = 0;
	
	const FETCH_BY_ID = 1;
	
	const FETCH_BY_CONTENT = 2;
}

class ReCaptchaConfig	{
	//live
//	static $pubKey = "6LcNRcASAAAAAIvZF3bkmVyj3e7l0L76Ns7aVWVv";
//	static $privKey = "6LcNRcASAAAAACMFufm9OgcujJJgkTh3avN6W3e3";
	
	//dev
	static $pubKey = "6LeF-MISAAAAAKXfmjbbhb-EO5wSfJK3qkRBfGD_";
	static $privKey = "6LeF-MISAAAAALfnG-00EKC8j829KsRsdteIhNe8";
}

class KeywordEnumType {
	static $Enumerate = array ( "sex" => array("Nam" => "Male", "Nữ" => "Female"));
}

?>